package org.liquidByte.trafficMustang.androidApp.services.dto;

import java.io.Serializable;

public class TrechoDTO implements Serializable {

	private static final long serialVersionUID = 844008007862270348L;
	private long id;
	private String situacao;
	private DeslocamentoDTO deslocamento;
	private UsuarioDTO passageiro;
	private boolean embarcavel;
	private boolean desembarcavel;
	private boolean cancelavel;
    private boolean passageiroRastreavel;
    private boolean motoristaRastreavel;
	
	public TrechoDTO() {
	}

	public TrechoDTO(long id, String situacao, DeslocamentoDTO deslocamento) {
		super();
		this.id = id;
		this.situacao = situacao;
		this.deslocamento = deslocamento;
	}
	
	public long getId() {
		return id;
	}
	
	public void setId(long id) {
		this.id = id;
	}
	
	public String getSituacao() {
		return situacao;
	}
	
	public void setSituacao(String situacao) {
		this.situacao = situacao;
	}
	
	public DeslocamentoDTO getDeslocamento() {
		return deslocamento;
	}
	
	public void setDeslocamento(DeslocamentoDTO deslocamento) {
		this.deslocamento = deslocamento;
	}

	public UsuarioDTO getPassageiro() {
		return passageiro;
	}

	public void setPassageiro(UsuarioDTO passageiro) {
		this.passageiro = passageiro;
	}

	public boolean isEmbarcavel() {
		return embarcavel;
	}

	public void setEmbarcavel(boolean embarcavel) {
		this.embarcavel = embarcavel;
	}

	public boolean isDesembarcavel() {
		return desembarcavel;
	}

	public void setDesembarcavel(boolean desembarcavel) {
		this.desembarcavel = desembarcavel;
	}
	
	public boolean isCancelavel() {
        return cancelavel;
    }

    public void setCancelavel(boolean cancelavel) {
        this.cancelavel = cancelavel;
    }
    
    public boolean isPassageiroRastreavel() {
        return passageiroRastreavel;
    }

    public void setPassageiroRastreavel(boolean passageiroRastreavel) {
        this.passageiroRastreavel = passageiroRastreavel;
    }
    
    public boolean isMotoristaRastreavel() {
        return motoristaRastreavel;
    }

    public void setMotoristaRastreavel(boolean motoristaRastreavel) {
        this.motoristaRastreavel = motoristaRastreavel;
    }

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + (int) (id ^ (id >>> 32));
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		TrechoDTO other = (TrechoDTO) obj;
		if (id != other.id)
			return false;
		return true;
	}
}
